// a. 获取异步请求模块
import axios from 'axios'
import Qs from 'qs'
import Axios from 'axios';


// 2.定义功能
// a、将地址统一管理
// var let const
// 纯页面开发  var
// 模块化开发中 不使用var，当你定义的变量不会发生变化时使用const

// b. 定义基础访问路径
const urls={
    filmListURL:"/film/filmApi/loadFilms.php",
    filmDetailURL:"/film/filmApi/loadFilmById.php",
    commentListURL:"/film/filmApi/loadComments.php",
    typesURL:"/film/filmApi/loadTyps.php",
    addCommentURL:"/film/filmApi/addComment.php"
};


// 全局配置
const productURL='http://localhost:80';
const devURL='/api';
//设置全局环境地址  生产？生产：开发
axios.defaults.baseURL=process.env.NODE_ENV==="production"?productURL:devURL;

//定义全局方法
//详情页 filmDetaiPage.vue
//电影详情
const loadFilmDetailById=function(filmId=""){
    return axios.get(urls.filmDetailURL,{
         params:{
             filmId
         },
     }).then(({statusText,data})=>{

         if(statusText=="OK"){
             // return Promise.resolve(data);
             return data;
         }else{
           
             return Promise.reject("请求失败");
         }
     })
 };
//评论
const loadFilmCommentsById=function(filmId=""){
    return axios.post(urls.commentListURL,Qs.stringify({filmId}))
    .then(({statusText,data})=>{
        if(statusText=="OK"){
            return data
        }else{
            return Promise.reject("请求失败")
        }
    })
}

const loadTypeList=function(){
    return axios.get(urls.typesURL)
    .then(({statusText,data})=>{
        if(statusText=="OK"){
            return data;
        }else{
            return Promise.reject("请求失败");
        }
    })
};

const loadFilmsByParams=function(params={}){
    return axios.post(urls.filmListURL,Qs.stringify(params))
    .then(({statusText,data})=>{
        if(statusText=="OK"){
            return data;
        }else{
            return Promise.reject("请求失败");
        }
    })
};
const loadAddComment=function(params={}){
    return axios.post(urls.addCommentURL,Qs.stringify(params))
    .then(({statusText,data})=>{
        if(statusText=="OK")
        {return data}
         return Promise.reject("请求失败") 
    })

}
//导出方法
export default {
    loadFilmDetailById,
    loadFilmCommentsById,
    loadTypeList,
    loadFilmsByParams,
    loadAddComment
}